/* TOC - Construction de la table des matières */
 
<template match="//toc"> /* ci dessous : deux fois "../" car le toc est dans un if */
    <div id="{select('string(../../@id)')}.tableofcontents" class="sect2 tableofcontents" test="{select('count(ul)')}">
        <h2>Table des matières</h2>
        {select('node()')}
    </div>
</template>

<template match="//toc//sect5" id="">
    <li><p><a strip="{$id==''}" href="#$id">{select('title/node()')}</a></p></li>
</template>

<template match="//toc//sect4" id="">
    <li>
        <p><a strip="{$id==''}" href="#$id">{select('title/node()')}</a></p>
        <ul test="{select('count(.//sect5)')}">{select('.//sect5')}
        </ul>
    </li>
</template>

<template match="//toc//sect3" id="">
    <li>
        <p><a strip="{$id==''}" href="#$id">{select('title/node()')}</a></p>
        <ul test="{select('count(.//sect4)')}">{select('.//sect4')}
        </ul>
    </li>
</template>

<template match="//toc//sect2" id="">
    <li>
        <p><a strip="{$id==''}" href="#$id">{select('title/node()')}</a></p>
        <ul test="{select('count(.//sect3)')}">{select('.//sect3')}
        </ul>
    </li>
</template>

<template match="//toc">
    <if test="{select('count(..//'.strtr(select('name(..)'),'1234','2345').')')}">
        <toc>
            <ul>{select('..//'.strtr(select('name(..)'),'1234','2345'))}</ul>
        </toc>
    </if>
</template>
